Thuật toán knn là gì? Các bài nghiên cứu khoa học liên quan

Thuật toán KNN là phương pháp học máy phi tham số hoạt động bằng cách tìm các điểm dữ liệu gần nhất trong không gian đặc trưng để dự đoán giá trị hoặc nhãn dựa trên mức độ tương đồng. Khái niệm này nhấn mạnh rằng KNN không xây dựng mô hình nội tại mà sử dụng toàn bộ dữ liệu huấn luyện để đưa ra kết quả, đồng thời phụ thuộc mạnh vào cách đo khoảng cách và lựa chọn tham số K.

Khái niệm thuật toán KNN

Thuật toán KNN (K Nearest Neighbors) là phương pháp học máy phi tham số hoạt động dựa trên nguyên tắc tương đồng giữa các điểm dữ liệu. Khi cần dự đoán nhãn hoặc giá trị của một điểm mới, thuật toán sẽ tìm các điểm gần nhất trong không gian đặc trưng rồi đưa ra kết luận dựa trên mối quan hệ giữa chúng. Không giống các mô hình học máy phức tạp khác, KNN không xây dựng mô hình nội bộ mà lưu toàn bộ dữ liệu huấn luyện để sử dụng trong giai đoạn dự đoán.

Đặc trưng nổi bật của KNN là tính đơn giản trong triển khai và khả năng thích ứng với nhiều dạng dữ liệu. Vì không có giả định mạnh về phân phối dữ liệu, thuật toán phù hợp cho các bài toán cần phân loại trực quan hoặc mô hình hóa quan hệ phi tuyến. Tuy nhiên KNN phụ thuộc lớn vào cấu trúc không gian đặc trưng, nên việc chuẩn hóa dữ liệu là bước quan trọng để tránh sai lệch do chênh lệch thang đo.

Dưới đây là các đặc điểm cơ bản của KNN:

  • Không xây dựng mô hình nội bộ, hoạt động dựa trên so sánh khoảng cách.
  • Phù hợp với bài toán phân loại và hồi quy đơn giản.
  • Đòi hỏi lưu trữ toàn bộ dữ liệu huấn luyện.

Cơ chế hoạt động cơ bản

KNN hoạt động dựa trên việc đo khoảng cách giữa điểm cần dự đoán và toàn bộ các điểm trong tập huấn luyện. Với mỗi điểm dữ liệu, thuật toán tính giá trị khoảng cách theo công thức xác định trước. Điểm nào có khoảng cách nhỏ hơn được xem là “láng giềng gần nhất”. Sau khi tìm được K điểm gần nhất, thuật toán dùng phương pháp bỏ phiếu (đối với phân loại) hoặc tính trung bình (đối với hồi quy) để đưa ra kết quả.

Khoảng cách Euclid thường là lựa chọn phổ biến trong dữ liệu số liên tục. Công thức: d(x,y)=i=1n(xiyi)2d(x, y) = \sqrt{\sum_{i=1}^{n}(x_i - y_i)^2} Công thức này giúp xác định độ tương đồng hình học giữa các điểm. Trong dữ liệu dạng lưới hoặc dữ liệu có cấu trúc khác biệt, khoảng cách Manhattan hoặc Minkowski có thể được sử dụng để tăng độ phù hợp.

Bảng dưới đây mô tả một số loại khoảng cách thường dùng:

Loại khoảng cáchCông thứcỨng dụng
Euclid(xiyi)2\sqrt{\sum (x_i - y_i)^2}Dữ liệu liên tục
Manhattanxiyi\sum |x_i - y_i|Dữ liệu dạng lưới
Minkowski(xiyip)1/p(\sum |x_i - y_i|^p)^{1/p}Dữ liệu đa dạng
Cosinexyxy\frac{x \cdot y}{||x|| ||y||}Văn bản, vector hướng

Tham số K và cách lựa chọn

Tham số K quy định số lượng láng giềng được xem xét khi đưa ra dự đoán. Việc lựa chọn K có ảnh hưởng lớn đến hiệu suất mô hình. Nếu chọn K nhỏ, mô hình trở nên nhạy cảm với nhiễu và dễ bị sai lệch khi gặp các điểm ngoại lệ. Ngược lại, nếu K quá lớn, mô hình có xu hướng làm mượt quá mức, dẫn đến phân loại kém chính xác vì ảnh hưởng của các điểm xa hơn.

Để lựa chọn K hợp lý, kiểm định chéo (cross validation) thường được sử dụng nhằm tìm giá trị tối ưu dựa trên độ chính xác trung bình của mô hình trên các tập con dữ liệu. Trong thực tiễn, K thường là số lẻ nhằm tránh hòa phiếu trong phân loại nhị phân. Ngoài ra cũng có thể kết hợp trọng số theo khoảng cách để giảm tác động của các láng giềng xa.

Các nguyên tắc chọn K hữu ích gồm:

  • K nhỏ: tăng độ nhạy, giảm ổn định.
  • K lớn: tăng ổn định, giảm tính phân biệt.
  • K tối ưu: thường được xác định bằng kiểm định chéo.

Các phương pháp đo khoảng cách

Đo khoảng cách là yếu tố cốt lõi trong hoạt động của KNN. Mỗi phương pháp đo mang đặc tính riêng phù hợp với các dạng dữ liệu khác nhau. Khoảng cách Euclid thể hiện sự khác biệt trong không gian đa chiều theo góc nhìn hình học cổ điển. Khoảng cách Manhattan phù hợp cho các bài toán có di chuyển theo ô lưới, như phân tích đường đi hoặc dữ liệu rời rạc. Với dữ liệu vector hóa từ văn bản hoặc tín hiệu, khoảng cách Cosine được dùng nhằm đánh giá mức độ tương đồng về hướng thay vì độ lớn.

Một số bài toán đặc thù yêu cầu chuyển đổi dữ liệu trước khi tính khoảng cách. Chuẩn hóa hoặc chuẩn hóa min max giúp dữ liệu có cùng thang đo, tránh trường hợp thuộc tính có biên độ lớn áp đảo kết quả. Trong những bài toán có yếu tố phân loại hỗn hợp (vừa số vừa ký hiệu), các phương pháp kết hợp hoặc đo khoảng cách Hamming có thể được sử dụng để xử lý dữ liệu dạng ký tự.

Ví dụ các loại khoảng cách thường dùng:

  1. Khoảng cách Euclid cho phân loại hình học.
  2. Khoảng cách Manhattan cho dữ liệu rời rạc.
  3. Khoảng cách Cosine cho xử lý văn bản.
  4. Khoảng cách Hamming cho dữ liệu nhị phân.

KNN trong bài toán phân loại

KNN được sử dụng rộng rãi trong phân loại nhờ cơ chế dựa trên sự tương đồng giữa các điểm dữ liệu. Với mỗi mẫu cần dự đoán, thuật toán xác định K láng giềng gần nhất rồi thực hiện bỏ phiếu để chọn nhãn xuất hiện nhiều nhất. Sự đơn giản trong quy trình này giúp KNN trở thành lựa chọn mạnh cho các bài toán nhận diện hình ảnh, phân loại tín hiệu, phân loại văn bản và phát hiện bất thường trong dữ liệu.

Trong nhiều trường hợp, KNN được cải thiện bằng cách gán trọng số theo khoảng cách. Điểm càng gần sẽ được gán trọng số cao hơn để tăng ảnh hưởng lên kết quả dự đoán. Cách tiếp cận này giúp mô hình linh hoạt hơn và cải thiện độ chính xác khi dữ liệu có phân bố không đồng đều. Việc chọn loại khoảng cách phù hợp cũng đóng vai trò lớn trong hiệu suất phân loại.

Dưới đây là một số kiểu phân loại với KNN:

  • Phân loại nhị phân: áp dụng trong các bài toán như phân biệt thư rác.
  • Phân loại đa lớp: dùng trong nhận diện ảnh với nhiều đối tượng.
  • Phát hiện bất thường: dựa trên các mẫu khác biệt so với nhóm láng giềng.

KNN trong bài toán hồi quy

Trong hồi quy, KNN xác định giá trị đầu ra bằng cách lấy trung bình hoặc trung vị của K láng giềng gần nhất. Cách tiếp cận này đặc biệt hữu ích với dữ liệu phi tuyến, nơi quan hệ giữa các biến khó được mô tả bằng mô hình tuyến tính. KNN hồi quy cho phép dự đoán mượt mà dựa trên sự gần gũi của các giá trị trong không gian đặc trưng.

Một đặc điểm quan trọng của KNN hồi quy là mức độ nhạy cảm với nhiễu. Nếu các láng giềng gần nhất bị nhiễu, giá trị dự đoán có thể lệch đáng kể. Do đó, việc chuẩn hóa dữ liệu và loại bỏ điểm ngoại lệ trước khi áp dụng là điều cần thiết. Trong nhiều tình huống, trung vị được ưu tiên hơn trung bình để tránh ảnh hưởng từ các giá trị bất thường.

Bảng dưới đây mô tả sự khác biệt giữa KNN phân loại và hồi quy:

Đặc điểmPhân loại KNNHồi quy KNN
Đầu raNhãn rời rạcGiá trị liên tục
Phương pháp tínhBỏ phiếu đa sốTrung bình hoặc trung vị
Độ nhạy với nhiễuTrung bìnhCao hơn phân loại

Ưu điểm và hạn chế

KNN nổi bật nhờ tính đơn giản, trực quan và khả năng hoạt động tốt mà không yêu cầu giả định mạnh về phân phối dữ liệu. Thuật toán phù hợp với nhiều loại dữ liệu và dễ triển khai trong các hệ thống xử lý thời gian thực ở quy mô nhỏ. Một điểm mạnh khác là khả năng thích ứng tốt khi có thêm dữ liệu mới, vì mô hình không cần huấn luyện lại.

Tuy nhiên KNN có hạn chế lớn về hiệu suất khi dữ liệu tăng kích thước. Việc tính khoảng cách từ điểm cần dự đoán đến toàn bộ tập dữ liệu khiến thời gian dự đoán tăng nhanh, đặc biệt khi tập huấn luyện lớn hoặc số chiều dữ liệu cao. Hiện tượng “lời nguyền chiều không gian” khiến khoảng cách giữa các điểm trở nên kém ý nghĩa, làm giảm độ chính xác của mô hình.

Các hạn chế quan trọng:

  • Chậm khi dự đoán với lượng dữ liệu lớn.
  • Nhạy cảm với thang đo dữ liệu, cần chuẩn hóa trước khi áp dụng.
  • Dễ bị ảnh hưởng bởi nhiễu và điểm ngoại lệ.

Ứng dụng thực tế

KNN được dùng rộng rãi trong nhiều lĩnh vực nhờ tính linh hoạt. Trong xử lý ảnh, thuật toán áp dụng để nhận diện chữ viết, phân loại hình ảnh và gán nhãn đối tượng. Trong lĩnh vực tài chính, KNN hỗ trợ phát hiện gian lận bằng cách xác định các giao dịch bất thường so với nhóm giao dịch bình thường. Các hệ thống khuyến nghị sử dụng KNN để gợi ý sản phẩm dựa trên mức độ tương đồng giữa người dùng.

Trong y khoa, KNN được dùng để hỗ trợ chẩn đoán bệnh dựa trên so sánh thông số sức khỏe giữa bệnh nhân mới và các hồ sơ trước đó. Các viện nghiên cứu như NIST cung cấp nhiều tài liệu về thuật toán phân lớp trong y sinh, trong đó KNN xuất hiện như một công cụ hữu ích do dễ diễn giải.

Ví dụ ứng dụng:

  1. Xử lý ảnh: phân loại đối tượng trong ảnh.
  2. Phân tích văn bản: gán nhãn chủ đề tài liệu.
  3. Phát hiện gian lận: nhận diện giao dịch bất thường.

Mở rộng và biến thể của KNN

Để cải thiện tốc độ và độ chính xác, nhiều biến thể của KNN đã được phát triển. Weighted KNN áp dụng trọng số theo khoảng cách để tăng tính chính xác khi các láng giềng gần nhất không đồng nhất. Fast KNN sử dụng các cấu trúc dữ liệu lập chỉ mục để giảm số lượng phép tính khoảng cách cần thiết.

Các phương pháp như KD Tree và Ball Tree tổ chức không gian dữ liệu thành cấu trúc phân cấp giúp rút gọn số điểm cần so sánh. Khi dữ liệu có kích thước rất lớn, các kỹ thuật Approximate Nearest Neighbors (ANN) được dùng để tìm láng giềng gần đúng nhằm giảm chi phí tính toán. Mặc dù độ chính xác có thể giảm nhẹ, ANN thường tối ưu hơn trong ứng dụng thời gian thực.

Bảng các phương pháp mở rộng:

Biến thểMục tiêuƯu điểm
Weighted KNNTăng độ chính xácGiảm ảnh hưởng của điểm xa
KD TreeTăng tốc tìm kiếmHiệu quả với dữ liệu trung bình số chiều
Ball TreeCải thiện tìm kiếm trong không gian lớnTốt hơn KD Tree khi số chiều cao
ANNTối ưu tốc độThích hợp cho hệ thống lớn

Kết luận

KNN là thuật toán trực quan, dễ triển khai và có giá trị ứng dụng cao trong nhiều lĩnh vực từ phân loại, hồi quy đến phát hiện bất thường. Tuy có hạn chế về tốc độ và độ hiệu quả trong không gian nhiều chiều, các biến thể và kỹ thuật tối ưu hóa đã giúp thuật toán duy trì tính hữu dụng trong hệ thống hiện đại. KNN tiếp tục là nền tảng quan trọng cho các phương pháp dựa trên tương đồng dữ liệu trong học máy.

Tài liệu tham khảo

Các bài báo, nghiên cứu, công bố khoa học về chủ đề thuật toán knn:

Sử dụng phân tích học tập để phát triển hệ thống cảnh báo sớm cho sinh viên gặp khó khăn Dịch bởi AI
International Journal of Educational Technology in Higher Education - Tập 16 Số 1 - 2019
Trong nghiên cứu hiện tại, dữ liệu tương tác của sinh viên trong môi trường học trực tuyến đã được sử dụng để nghiên cứu xem liệu hiệu suất học tập của sinh viên vào cuối kỳ có thể được dự đoán từ những tuần đầu hay không. Nghiên cứu được thực hiện với 76 sinh viên năm hai đại học đăng ký trong một khóa học phần cứng máy tính. Nghiên cứu nhằm trả lời hai câu hỏi chính: những thuật toán và đặc điểm... hiện toàn bộ
#phân tích học tập #hệ thống cảnh báo sớm #sinh viên gặp khó khăn #thuật toán kNN #hiệu suất học tập
Ứng dụng thuật toán SVM và KNN trong xây dựng mô hình phân loại trái dừa có sáp và không sáp tại Việt Nam
Tạp chí Khoa học và Công nghệ - Đại học Đà Nẵng - - Trang 41-46 - 2021
Bài báo này trình bày phương pháp và kết quả phân loại trái dừa sáp và không sáp tại tỉnh Trà Vinh, Việt Nam. Mô hình thực nghiệm được xây dựng để lấy mẫu và xử lý tín hiệu sóng âm thu được từ việc tác động cơ học vào trái dừa thông qua nhiều phương pháp tác động khác nhau: lắc tay, gõ tay, gõ máy tương ứng với nhiều vật liệu được thử nghiệm: đầu đá, đầu nhựa, đầu kim loại. Tín hiệu sóng âm thu về... hiện toàn bộ
#dừa sáp #trích đặc trưng #xử lý tín hiệu sóng âm #phương pháp KNN #phương pháp SVM
NGHIÊN CỨU MÔ HÌNH CẢNH BÁO HÀNH VI LỖI CỦA SĨ QUAN HÀNG HẢI VÀ ĐÁNH GIÁ ĐỘ CHÍNH XÁC BẰNG THUẬT TOÁN KNN
Tạp chí Khoa học Công nghệ Hàng hải - Tập 79 - Trang 07-12 - 2024
Các nhà khoa học đã và đang tốn rất nhiều công sức để tìm kiếm các giải pháp hữu ích nhằm giảm thiểu các sự cố tai nạn hàng hải. Trong đó tìm hiểu và giải quyết các nguyên nhân gây ra cố hàng hải dường như là biện pháp tối ưu nhất để ngăn chặn các tai nạn hàng hải xảy ra. Dữ liệu thống kê tai nạn hàng hải cho thấy trên 80% nguyên nhân dẫn đến tai nạn hàng hải bắt nguồn từ lỗi con người. Bởi vậy, k... hiện toàn bộ
#Tai nạn hàng hải #hành vi con người #đánh giá độ chính xác #thuật toán KNN #mô phỏng hàng hải.
Ảnh Hưởng Giá Trị K Của Thuật Toán KNN Đến Hiệu Suất Chẩn Đoán Lỗi Cho Hệ Thống Điều Hòa Không Khí Trung Tâm
Journal of Technical Education Science - Số 76 - 2023
Phát hiện và chẩn đoán lỗi kịp thời cho hệ thống điều hòa không khí trung tâm (ĐHKKTT) giúp tăng tuổi thọ, ngăn ngừa các hư hỏng nghiêm trọng và giảm lãng phí năng lượng của hệ thống. Từ thực tế trên, nghiên cứu này xác định giá trị K của thuật toán KNN, đề xuất mô hình phát hiện và chẩn đoán lỗi cho hệ thống ĐHKKTT dựa trên thuật toán K-nearest neighbors (FDD-KNN). Kết quả cho thấy khi giá trị K=... hiện toàn bộ
#HVAC #FDD #KNN #Energy #Condenser
Thuật toán toàn diện dựa trên GPU xử lý truy vấn kNN Dịch bởi AI
Springer Science and Business Media LLC - Tập 73 - Trang 4611-4634 - 2017
Truy vấn kNN (k-láng giềng gần nhất) hiệu quả rất hữu ích, trong số các lĩnh vực khác, trong việc truy xuất thông tin đa phương tiện, khai thác dữ liệu và các vấn đề nhận dạng mẫu. Một hàm khoảng cách xác định độ tương đồng giữa các đối tượng với một đối tượng truy vấn kNN cho trước. Do việc xác định khoảng cách giữa bất kỳ cặp đối tượng nào (tức là, các vectơ trong không gian nhiều chiều) được bi... hiện toàn bộ
#kNN #GPU #thuật toán toàn diện #Sắp xếp Chọn #Sắp xếp Nhanh #hiệu suất
NGHIÊN CỨU MÔ HÌNH HỆ THỐNG HỖ TRỢ TƯ VẤN CÔNG TÁC HỌC VỤ TRONG CƠ SỞ GIÁO DỤC ĐẠI HỌC
Tạp chí Khoa học Trường Đại học Sư phạm Thành phố Hồ Chí Minh - Tập 18 Số 6 - Trang 1146 - 2021
  Chatbot là một hệ thống giao tiếp tương tác với con người bằng các phương pháp học máy, thực hiện cuộc trò chuyện thông qua một giao diện dưới dạng tin nhắn hoặc âm thanh. Trong thời kì chuyển đổi số ngày nay đã tạo điều kiện để chatbot tăng tốc nhanh chóng và tạo ra một hệ thống nhiều loại bot tương tự hệ sinh thái ứng dụng như trong việc chăm sóc khách hàng như cung cấp thông tin sản phẩm, đưa... hiện toàn bộ
#Chatbot #thuật toán KNN #ngôn ngữ tự nhiên #mạng nơron
XÁC ĐỊNH VÙNG XÁC SUẤT VỊ TRÍ TÀU NHẬN ĐƯỢC TỪ MÁY THU GPS THỰC TẾ TRÊN VÙNG VEN BIỂN VIỆT NAM
Tạp chí Khoa học Công nghệ Hàng hải - Số 61 - Trang 10-14 - 2020
Việc xác định vị trí tàu và dẫn đường phụ thuộc vào các hệ thống định vị vệ tinh toàn cầu, chủ yếu là hệ thống GPS (Global Position System). Trong thực tế hàng hải, vị trí tàu xác định được coi là vị trí xác suất nhất và sẽ là tâm của hình tròn xác suất chứa vị trí tàu. Tuy nhiên, điều này chưa hoàn toàn chính xác vì còn phụ thuộc vào nhiều yếu tố như sai lệch hệ trắc địa, độ chính xác của hải đồ,... hiện toàn bộ
#Xác định vị trí tàu #thuật toán KNN #vùng xác suất.
Tổng số: 8   
  • 1